home *** CD-ROM | disk | FTP | other *** search
/ Software Vault: The Gold Collection / Software Vault - The Gold Collection (American Databankers) (1993).ISO / cdr48 / poptxt.zip / HYPERDO2.DOC < prev    next >
Text File  |  1993-04-18  |  15KB  |  341 lines

  1.                        PopText HelpSystem
  2.                            Version 2.2
  3.                          (For Turbo 5.5)
  4.                                by
  5.                         Brian K. Trotter
  6.  
  7.  
  8.                   (C) 1989 Tone Zone Computing
  9.  
  10.  
  11.              Distributed under the ShareWare System
  12.  
  13.  
  14. Restrictions: Permission is given to freely copy and distribute
  15. this program so long as there is no charge, and that it is not
  16. added as an incentive to market another software or hardware
  17. product. This program is NOT a public domain program, but is
  18. being distributed under the "ShareWare" concept. Anybody may use
  19. these programs, but only REGISTERED USERS may actually
  20. incorporate the units HYPERHLP,HYPFW, HELPDEF and SCREENIO. Users
  21. are asked to send a registration fee of Twenty-Five
  22. Dollars ($25.00) to:
  23.               Tone Zone Computing.
  24.               P.O. Box 414
  25.               Bishop, CA 93514
  26. Registration entitles users to freely incorporate POPTEXT into
  27. their Turbo Pascal programs. By the way, there are several
  28. signatures embedded in the code, so I can verify my copyright
  29. against non-registered users.
  30.  
  31. Disclaimer: This software and accompanying documentation files
  32. are provided "AS IS" without warranty of any kind. Further, Tone
  33. Zone Computing does not Warrant, guarantee, or make any
  34. representations regarding the use, or the results of use, of this
  35. software. All risk taken in the use of this software is assumed
  36. by you, the user and Not Tone Zone Computing, nor any software
  37. club distributing this software. Due to the nature of this
  38. software (programming aid), it should be pointed out that
  39. improper use of this software can lead to unexpected results.
  40. You, the user assume all responsiblity for these results.
  41.  
  42. That should satisfy my lawyers. Now on to the more important
  43. stuff.
  44.  
  45. I.  The Purpose of POPTEXT.
  46.     Too often, especially in the ShareWare market, documentation
  47. becomes scarce, or users become loath to pass on needed
  48. documentation files. Often times, programmers fail to properly
  49. document files out of either neglect or laziness. One feature of
  50. several commercial programs in addition to outstanding
  51. documentation is the POP-UP HELP WINDOW. Excellent examples of
  52. this are found in Turbo Pascal 4.0 and above, Wordstar 2000+, and
  53. Novel LAN services. With or without the manual, the user has some
  54. reference available on-line.
  55.     POPTEXT is an includable UNIT for Turbo Pascal programmers to
  56. prepare similar help systems.
  57.  
  58.  
  59. II.  Features of POPTEXT.
  60.     POPTEXT features an easy to use editor, a unit to include in
  61. Turbo 5.5 programs and three bonus units, including some fast
  62. writing routines, routines to enhance CRT, and a unit with all 
  63. of the key definitions.
  64.     The POPTEXT system features Context sensitive help, Window
  65. linking, and an easy to use Menubar.
  66.     POPRES is a memory resident version of POPTEXT which can be
  67. accessed through Int $6E
  68.  
  69. III.  About the Help window.
  70.     Each help window is a record consisting of 15 lines and 15
  71. links. The lines are displayed on the screen, and the links are
  72. hidden in the background. In addition to being linked by line,
  73. windows are linked by the Page Up and Page Down keys. Windows are
  74. stored in a file with the extension .hlp, and are accessed
  75. randomly by POPTEXT. It is possible to access any record which
  76. already exists within the helpfile. Using the Editor, you can
  77. create new files, and append the files up to 256 records each.
  78.  
  79. IV.  Using the Editor.
  80.     Using the Editor is as simple as typing HELPED Plus the name
  81. of the file you wish to edit. If you do not supply a filename,
  82. HELPED will prompt you for one. If the file does not exist,
  83. HelpEd will create a new file.
  84.     Next, you are prompted with options to Edit, Link, Test,
  85. Choose Another, and Quit.
  86.     Edit - Allows you to place text in the windows. A few helpful
  87. hints here. After you have selected the Page number, use the
  88. Arrow keys (Up/Down) to select lines to Edit. Page/Up and
  89. Page/Down allow you to browse through the pages.
  90.         Important features of Edit.
  91.                 F2:  Switches you to linking Mode.
  92.                 F3:  Centers the Current line of text.
  93.                 Enter or any Alphanumeric:
  94.                         Edit the current line.
  95.                            (While Editing line, ESC erases line)
  96.                 ESC: Return to Main Menu.
  97.     Link - Linking is the key to POPTEXT. To the right of the
  98. help box, you will see a list of numbers in another box. Most
  99. likely, in a new file these will all be zeroes. If you are
  100. editing the help file which came with this program, you will find
  101. several non-zero numbers. These represent links in the stack. The
  102. file can be looked at as a stack of cards. The links allow you to
  103. move to any portion of the stack. Links are line oriented, so
  104. selecting the link at the user level is as easy as moving the bar
  105. to the line containing the link and pressing enter. This is only
  106. the first step. In the editing mode, you have to mark the text by
  107. highlighting a keyword in the text line associated with the link.
  108. To do so, press ^Q before you type the word to be associated, and
  109. ^W after. This will highlight the word. POPTEXT will properly
  110. function only when both of these is done.
  111.    There can be up to 15 links in each box. To establish a link,
  112. move the cursor to the line you want linked and press enter.
  113. Respond to the prompt with the number you want linked. Pressing
  114. ALT-C clears all links. Pressing F1 returns you to the editor
  115. mode.
  116.     Test - Testing the helpscreen causes the program to activate
  117. the very same subroutine which you will incorporate in your
  118. program. In this manner, you can see how the help menu will look
  119. and feel, as well as check the validity of the links.
  120.     Choose Another File - Allows you to close the current help
  121. stack and select another. If the selected file does not exist,
  122. PopText will create it.
  123.     Quit and Save - Rather self explanatory.
  124.  
  125.  
  126.  
  127. Section II:  Organizing a PopText Stack.
  128.     I predict the most popular use for this program will be
  129. context sensitive help. This is best demonstrated from the Turbo
  130. Pascal Menubar. Whereever you are in the menubar, pressing F1
  131. gives you help on that subject. This is because its helpfile is
  132. indexed so that it calls up the exact heading needed. Another
  133. popular use will be the Deck. The deck is used when it is
  134. nessessary to show the user a large amount of facts in small
  135. bits. You start at the top and browse through the cards at your
  136. leisure. It is possible to provide vast amounts of data through
  137. the deck.
  138.  
  139. I.  Context Sensitive Help.
  140.     Context sensitive help is achieved when a program is able to
  141. recognize what block of information is required to deliver to the
  142. user, and automatically selects the appropriate card from the
  143. deck.
  144.     Example: You have Six menus with 4 to 9 options on each
  145. menu. You wish to maintain expandability to up to 9 items on each
  146. menu. (Menus should never have more that 9 items. If you are
  147. building larger menus, consider breaking them up. It is much
  148. easier on the user. The menus are all arranged by Topic. Pressing
  149. F1 at a Menu Header (e.g. File Options, Compiler Options, Run,
  150. Edit, etc) will call the card 10 times the menu number. On the
  151. menu choices, pressing F1 will call 10 times the menu number plus
  152. the number of the choice. In this way, the cards are indexed
  153. automatically by topic, and easy to manipulate. Should further
  154. information be needed past the first card of each topic, it would
  155. then LINK to a card further away.
  156.  
  157. II. Random Access Deck.
  158.     Random Access Decks are most usefull for teaching and
  159. outlines. In addition to Context-Sensitive Help, Turbo Pascal
  160. also has a Random Access Deck. It is called by pressing F1 again
  161. after pressing F1. This places the user in a very sophisticated
  162. menu where he can select from the topic of his choice. Some of
  163. these are submenus, leading down to further topics. Since all who
  164. will be using this program are Turbo Pascal Users, I suggest you
  165. explore the Help system. It will give excellent insight into
  166. Random Access Decks.
  167.     Example: Information on various topics is stored in my
  168. stacks. On the first card, I have a list of topics where if there
  169. are more than 15 topics, I split the options over several decks
  170. with a more option. (Usually, the first cards are all topic
  171. cards, so pressing pagedown imediatly gives me more topics.
  172.     On the first menu I select the topic "Cars". This moves me to
  173. a card with a list of manufacturers. I select "Nissan". This
  174. moves me to a list of models. I select "Sentra". I am now looking
  175. at a card with information on the Nissan Sentra. In this manner,
  176. I can arrange all my data. Another example of how this structure
  177. works can be seen in Biology. Start your stack with the largest
  178. topics. From there, work your way down to sub topics until you
  179. reach the exact information you require.
  180.     The help menu which comes with this program is an example of
  181. a Random access stack, except that it leads you through the steps
  182. required much more carefully than you normally might. This is to
  183. better educate you. Remember, you are responsible for indicating
  184. to the user the proper way to move about the stack.
  185.  
  186.     It is quite possible to combine a context sensitive stack
  187. directly into a random access stack. The random access stack must
  188. eventually dig into the context sensitive data as its final
  189. results.
  190.  
  191.  
  192.  
  193.  
  194.  
  195.     Including POPTEXT in your programs.
  196.     If you are a Turbo 5.5 user, you are ready to go. Simply add
  197. the statement      Uses Hyperhlp;
  198.   to your program.  There are several requirements.
  199.  
  200.          1. You must call function
  201. OPENHELPFILE(S:String):Integer;
  202.          2. Any time you want to use the help system, simply
  203. invoke the procedure PopTextCard(NUM:BYTE); where num is the card
  204. number you wish to begin on.
  205.          3. If Openhelpfile returns a non-zero result, then
  206. either POPTEXT was unable to find the file, or the file is bad.
  207.          4. On exit, is is always wise to call the function
  208. CLOSEHELPFILE:integer;
  209.          5. You must at compile time have the units
  210.               Keynames,
  211.               Screenio,
  212.               HLPFW,
  213.               HelpDef,
  214.               Hyperhlp; in the Unit directory or current drive.
  215.  
  216. Using POPRES:
  217.         PopRes is designed for those who do not have Turbo Pascal
  218. 5.5. Nearly every language enables the user access to the 8088's
  219. built in interrupt functions. POPRes is a memory resident program
  220. which traps a normally unused interrupt vector ($6E) and causes
  221. it to act just like unit HYPERHLP. (It is the unit HYPERHLP with
  222. some surrounding code.) Load POPRES before loading the program
  223. which calls the POPTEXT routines.
  224.  
  225. ******* IMPORTANT NOTE:  DO NOT USE THESE INTERRUPT VECTORS
  226. ******* IF POPRES.EXE IS NOT INSTALLED!  YOUR SYSTEM WILL HALT!
  227.  
  228.         We advise caution in the use of these routines if you are
  229. unfamiliar with the use of Interrupts.
  230.  
  231.         INT $6E  -  POPRES
  232.  
  233.         AH = 0  PopTextCard
  234.                 Entry conditions: AH = 0
  235.                                   AL = Window to use.
  236.                 Exit conditions: None
  237.                 Activates the Help window beginning with card
  238. number Al. Control is passed back to the caller when user escapes
  239. help.
  240.  
  241.         AH = 1  OPENHELPFILE
  242.                 Entry conditions: Ah=1
  243.                                   DS:DX = pointer to an ASCIIZ
  244. string with filename of helpfile.
  245.                 Exit conditions
  246.                    Al = 0  no error
  247.                    Al = 1  file not found.
  248.  
  249.         Prepares the help window by assigning a filevar. Required
  250. preparatory routine before calling PopTextCard.
  251.  
  252.         AH = 2  Closehelpfile
  253.                 Entry conditions: AH = 2
  254.                 Exit conditions: None
  255.  
  256.         Closes Help file and de-initializes Openhelpfile. Usefull
  257. for changing help files.
  258.  
  259.  
  260.         A sample program using POPRES is included.  Zhlp.asm.
  261.         For your convenience it has already been assembled, but
  262. you may alter it at your leisure and learn from it.
  263.  
  264.  
  265.  
  266.  
  267. Licensing agreement.
  268.  
  269.     While this program is in the Shareware system, and no fee can
  270. be charged for distribution (I make an exception for shareware
  271. firms and user groups who may charge up to $5.00 for media and
  272. time to copy only.), It is NOT, repeat NOT a public domain
  273. program. Please have respect for the many hours which went into
  274. POPTEXT. Those programmers who uses POPTEXT must appreciate the
  275. work of programming. I hereby licence to REGISTERED USERS only,
  276. the right to incorporate Screenio, HLPFW, HelpDef, and Hyperhlp
  277. into thier programs. I only included the interface sections,
  278. which are listed in the *.doc files. Currently, only Turbo 4.0 is
  279. supported, and all other versions must use the memory resident
  280. POPRES.EXE and interrupts.
  281.  
  282. Registration Fees and benefits.
  283.  
  284.     By registering this program, you entitle yourself to two
  285. the latest version of this program, plus one upgrade. I promise,
  286. there will be upgrades. In addition, you will receive other
  287. programs on a shareware basis, plus a discount on registration of
  288. future Tone Zone Computing Programs. Honest, there will be more.
  289. Registered users may purchase the source code for POPTEXT for
  290. $50.00.  This source code may be modified and distributed in
  291. your EXEcutable files, but not distributed in source form.
  292. Information on purchasing POPTEXT source will be sent to
  293. registered users.
  294.     Eventually, an assembly language version of POPTEXT will be on
  295. the way which may be included in Assembly Language and 'C'
  296. programs. Also on the way is ADVENTURESOFT, an adventure writing
  297. language, an Object oriented database series, and many, many
  298. utilities.
  299.     If you wish to register, please send $25.00, check or money
  300. order to
  301.                    Tone Zone Computing
  302.                    Rt 2 TP 13
  303.                    Bishop, Ca 93514
  304.  
  305.                    Make Checks Payable to
  306.                    Tone Zone Computing
  307.  
  308.     You will receive the latest version of POPTEXT as well as
  309. proof of registration.  Please include the version number.
  310.  
  311. VERSION NUMBER 2.2
  312.  
  313.  
  314. Note:  There is one known bug in the editor.  When you are
  315. testing a stack and encounter a window with no links, the
  316. editor's TEST utility will print garbage.  PopRES.EXE and
  317. HyperHlp.TPU do not exhibit these problems.  This error will
  318. be fixed soon, and a spot upgrade sent to registered users.
  319. Also:  Turbo Pascal 4.0 Users.  PopText 2.1 is compiled and ready
  320. for Turbo Pascal 4.0.  Please indicate on the registration
  321. form that you are a TP4.0 user and I will send you a version
  322. for 4.0 instead of 5.5.  Turbo 5.0 users will have to purchase
  323. the source code for $50.00 and re-compile the units on their
  324. machine.  Poptext 2.1, using Turbo 4.0 is available on
  325. Random Access Information Network (503)-761-8100 (12/24,N,8,1).
  326.  
  327.  
  328.  
  329.  
  330. Poptext (C) 1989 Brian K. Trotter
  331.         (C) 1989 Tone Zone Computing.
  332.  
  333. Poptext 2.2 is written entirely in Turbo Pascal 5.5 and TASM 1.0
  334.  
  335. Turbo Pascal is a registered trademark of Boorland International,
  336. Inc.
  337.  
  338. TASM - Turbo Pascal Assembler is a registered trademark of Boorland
  339. International, Inc.
  340.  
  341.